﻿<ResourceDictionary
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:wpf="clr-namespace:ViewOnCore.Helper.WPF">

    <ControlTemplate x:Key="ComboBox.SplitButton.ContentButton" TargetType="{x:Type ToggleButton}">
        <Border
			  x:Name="Border"
			  Grid.ColumnSpan="2"
			  CornerRadius="1"
			  Background="{DynamicResource VOColor12}"
			  BorderBrush="{DynamicResource VOColor12}"
			  BorderThickness="1" />
        <ControlTemplate.Triggers>
            <Trigger Property="ToggleButton.IsMouseOver" Value="true">
                <Setter TargetName="Border" Property="Background" Value="{DynamicResource VOColor16}" />
                <Setter TargetName="Border" Property="BorderBrush" Value="{DynamicResource VOColor16}" />
            </Trigger>
            <!--Trigger Property="ToggleButton.IsChecked" Value="true">
                <Setter TargetName="Border" Property="Background" Value="{StaticResource FlatHeaderPressedBackgroundBrush}" />
            </Trigger-->
            <!--Trigger Property="IsEnabled" Value="False">
				<Setter TargetName="Border" Property="Background" Value="{StaticResource DisabledBackgroundBrush}" />
				<Setter TargetName="Border" Property="BorderBrush" Value="{StaticResource DisabledBorderBrush}" />
				<Setter Property="Foreground" Value="{StaticResource DisabledForegroundBrush}"/>
				<Setter TargetName="Arrow" Property="Fill" Value="{StaticResource DisabledForegroundBrush}" />
			</Trigger-->
        </ControlTemplate.Triggers>
    </ControlTemplate>

    <ControlTemplate x:Key="ComboBox.SplitButton.ArrowButton" TargetType="{x:Type ToggleButton}">
        <Grid Width="10">
            <Border
			  x:Name="Border"
			  CornerRadius="1"
			  Background="{DynamicResource VOColor12}"
			  BorderBrush="{DynamicResource VOColor12}"
			  BorderThickness="1" />
            <Path
			  x:Name="Arrow"
			  Grid.Column="1"
			  Fill="{DynamicResource VOColor10}"
			  HorizontalAlignment="Center"
			  VerticalAlignment="Center"
			  Data="M 0 0 L 4 4 L 8 0 Z"/>
        </Grid>
        <ControlTemplate.Triggers>
            <!--Trigger Property="ToggleButton.IsMouseOver" Value="true">
                <Setter TargetName="Border" Property="Background" Value="{StaticResource FlatHeaderHoverBackgroundBrush}" />
            </Trigger>
            <Trigger Property="ToggleButton.IsChecked" Value="true">
                <Setter TargetName="Border" Property="Background" Value="{StaticResource FlatHeaderPressedBackgroundBrush}" />
            </Trigger-->
            <!--Trigger Property="IsEnabled" Value="False">
				<Setter TargetName="Border" Property="Background" Value="{StaticResource DisabledBackgroundBrush}" />
				<Setter TargetName="Border" Property="BorderBrush" Value="{StaticResource DisabledBorderBrush}" />
				<Setter Property="Foreground" Value="{StaticResource DisabledForegroundBrush}"/>
				<Setter TargetName="Arrow" Property="Fill" Value="{StaticResource DisabledForegroundBrush}" />
			</Trigger-->
        </ControlTemplate.Triggers>
    </ControlTemplate>

    <ControlTemplate x:Key="ComboBox.TransparentWithEffect2.TextBox" TargetType="{x:Type TextBox}">
        <Border x:Name="PART_ContentHost" Focusable="False" Background="{TemplateBinding Background}" />
    </ControlTemplate>

    <Style x:Key="{x:Type wpf:SplitButton}" TargetType="{x:Type wpf:SplitButton}">
        <Setter Property="SnapsToDevicePixels" Value="true"/>
        <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto"/>
        <Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/>
        <Setter Property="ScrollViewer.CanContentScroll" Value="true"/>
        <Setter Property="MinWidth" Value="34"/>
        <Setter Property="MinHeight" Value="16"/>
        <Setter Property="FocusVisualStyle" Value="{x:Null}" />
        <Setter Property="Foreground" Value="{DynamicResource VOColor1A}" />
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type wpf:SplitButton}">
                    <Grid>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition/>
                            <ColumnDefinition Width="14"/>
                        </Grid.ColumnDefinitions>
                        <ToggleButton
						  Name="ContentButton"
						  Template="{StaticResource ComboBox.SplitButton.ContentButton}"
						  Grid.Column="0"
						  Focusable="false"
						  ClickMode="Press"/>
                        <ToggleButton
						  Name="ArrowButton"
						  Template="{StaticResource ComboBox.SplitButton.ArrowButton}"
						  Grid.Column="1"
						  Focusable="false"
						  IsChecked="{Binding Path=IsDropDownOpen,Mode=TwoWay,RelativeSource={RelativeSource TemplatedParent}}"
						  ClickMode="Press"/>
                        <ContentPresenter
						  Name="ContentSite"
						  IsHitTestVisible="False"
						  Content="{TemplateBinding ComboBox.SelectionBoxItem}"
						  ContentTemplate="{TemplateBinding ComboBox.SelectionBoxItemTemplate}"
						  ContentTemplateSelector="{TemplateBinding ComboBox.ItemTemplateSelector}"
						  Margin="0"
						  VerticalAlignment="Center"
						  HorizontalAlignment="Left"/>
                        <!--TextBox x:Name="PART_EditableTextBox"
                                 Template="{StaticResource ComboBox.TransparentWithEffect2.TextBox}"
                                 Style="{x:Null}"
                                 HorizontalAlignment="Left"
                                 VerticalAlignment="Center"
                                 Margin="3,3,3,3"
                                 Focusable="True"
                                 Background="Transparent"
                                 Visibility="Hidden"
                                 IsReadOnly="{TemplateBinding IsReadOnly}"/-->
                        <Popup
						  Name="Popup"
						  Placement="Bottom"
						  IsOpen="{TemplateBinding ComboBox.IsDropDownOpen}"
						  AllowsTransparency="True"
						  Focusable="False"
						  PopupAnimation="Slide">
                            <Grid
							  Name="DropDown"
                              Margin="1"
							  SnapsToDevicePixels="True"
							  MinWidth="{TemplateBinding ActualWidth}"
							  MaxHeight="{TemplateBinding ComboBox.MaxDropDownHeight}">
                                <Border
								  x:Name="DropDownBorder"
								  Background="{DynamicResource VOColor14}"
								  CornerRadius="1"/>
                                <ScrollViewer Margin="4,6,4,6" SnapsToDevicePixels="True">
                                    <StackPanel IsItemsHost="True" KeyboardNavigation.DirectionalNavigation="Contained" />
                                </ScrollViewer>
                            </Grid>
                        </Popup>
                    </Grid>
                    <ControlTemplate.Triggers>
                        <Trigger Property="HasItems" Value="false">
                            <Setter TargetName="DropDownBorder" Property="MinHeight" Value="95"/>
                        </Trigger>
                        <!--Trigger Property="IsEnabled" Value="false">
							<Setter Property="Foreground" Value="{StaticResource DisabledForegroundBrush}"/>
						</Trigger-->
                        <!--Trigger Property="IsGrouping" Value="true">
                            <Setter Property="ScrollViewer.CanContentScroll" Value="false"/>
                        </Trigger-->
                        <Trigger SourceName="Popup" Property="Popup.AllowsTransparency" Value="true">
                            <Setter TargetName="DropDownBorder" Property="Margin" Value="0,2,0,0"/>
                        </Trigger>
                        <!--Trigger Property="IsEditable" Value="true">
                            <Setter Property="IsTabStop" Value="false"/>
                            <Setter TargetName="PART_EditableTextBox" Property="Visibility"	Value="Visible"/>
                            <Setter TargetName="ContentSite" Property="Visibility" Value="Hidden"/>
                        </Trigger-->
                    </ControlTemplate.Triggers>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
        <Style.Triggers>
        </Style.Triggers>
    </Style>

    <Style x:Key="{x:Type wpf:SplitButtonItem}" TargetType="{x:Type wpf:SplitButtonItem}">
        <Setter Property="SnapsToDevicePixels" Value="true"/>
        <Setter Property="FocusVisualStyle" Value="{x:Null}" />
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type wpf:SplitButtonItem}">
                    <Border
                        Name="Border"
                        Padding="1"
                        CornerRadius="1"
                        SnapsToDevicePixels="True">
                        <ContentPresenter />
                    </Border>
                    <ControlTemplate.Triggers>
                        <Trigger Property="IsHighlighted" Value="true">
                            <Setter TargetName="Border" Property="Background" Value="{DynamicResource VOColor17}"/>
                        </Trigger>
                        <!--Trigger Property="IsEnabled" Value="false">
							<Setter Property="Foreground" Value="{StaticResource DisabledForegroundBrush}"/>
						</Trigger-->
                    </ControlTemplate.Triggers>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

</ResourceDictionary>